The present invention relates to industrial automation. More specifically, the present invention relates to an XML-based event driven interface for OPC Data Access.
OPC or Open Connectivity provides open standards specifications developed for communication of real-time data between control devices from different manufacturers. In general, OPC is a series of standards specifications. The first standard (originally called the “Object Linking and Embedding (OLE) for Process Control” OPC Specification”), is generally called the Data Access Specification, or “OPC Data Access.”
The OPC Specification is based on the OLE, common object model (COM), and distributed COM (DCOM) technologies developed by Microsoft for the Microsoft Windows operating system family. The specification defines a standard set of objects, interfaces, and methods for use in process control and manufacturing automation applications to facilitate interoperability (hereinafter the OPC Data Access interface).
OPC servers typically provide a method for many different software packages to access data from a process control device, such as a process or programmable logic controller (PLC) or distributed control system (DCS). Traditionally, any time an application needed access to data from a device, a custom interface, or driver, had to be written. The purpose of OPC was to define a common interface or API that is written once and then reused by different software packages. Once an OPC server is written for a particular device, it can be reused by any application that is able to act as an OPC client.
However, traditionally, the OPC interface has been restricted to the Microsoft COM/DCOM framework. Automation applications written with in other languages, such as Java™/J2EE™, especially in service oriented event-driven architectures cannot access the OPC Data Access interface in a direct and straightforward manner as OPC clients. This limitation complicates the development of components that link enterprise software to industry devices. Thus, many enterprise software packages do not have access to industry devices, and data exchange is done through a manual process.
Accordingly, what is desired are improved methods and apparatus for solving the problems discussed above. Additionally, what is desired are improved methods and apparatus for reducing some of the drawbacks discussed above.